home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 25 / AACD 25.iso / AACD / Magazine / Installer / Example2 < prev    next >
Text File  |  2001-09-03  |  3KB  |  134 lines

  1. ; Procedures
  2. ;;; Copy the program and docs
  3. (procedure CopylibAll #SrcDir #DestDir
  4.     (message (cat 'Source: ' #SrcDir '\nDest: ' #DestDir))
  5.     (foreach #SrcDir '#?'
  6.         (
  7.             (if (> @each-type 0)
  8.                 (CopyLibAll (tackon #SrcDir @each-name) (tackon #DestDir @each-name))
  9.                 (
  10.                     (if (NOT (exists #DestDir)) (makedir #DestDir))
  11.                     (copylib
  12.                         (prompt (cat 'Copying ' @each-name ' to ' #DestDir))
  13.                         (help #InstallHelp)
  14.                         (source (tackon #SrcDir @each-name))
  15.                         (dest #DestDir)
  16.                         (confirm)
  17.                         (infos)
  18.                     )
  19.                 )
  20.             )
  21.         )
  22.     )
  23. )
  24. ;;;
  25. ;;; Set tooltypes
  26. (set #PicPath 'Pictures:')
  27. (procedure SetupTooltypes
  28.     (tooltype
  29.         (dest (tackon #DestDir 'MyProg'))
  30.         (settooltype 'PicturePath' #PicPath)
  31.         (settooltype 'BrushPath' #PicPath)
  32.     )
  33. )
  34. ;;;
  35. ;;; Create config file
  36. (procedure WriteConfig
  37.     (textfile
  38.         (dest (tackon #DestDir 'MyProg.cfg'))
  39.         (include (tackon #DestDir 'MyProg.cfg'))
  40.         (append (cat 'MailAddress=' #MailAddress '\n'))
  41.         (append (cat 'POP3server=' #POP3 '\n'))
  42.         (append (cat 'SMTPserver=' #SMTP '\n'))
  43.         (append (cat 'Login=' #Login '\n'))
  44.         (append (cat 'Password=' #Password '\n'))
  45.         (include 'Defaults.cfg')
  46.     )
  47. )
  48. ;;;
  49. ;;; Set language strings
  50. (procedure SetLanguage
  51.     (SetEnglish)
  52.     (if (= @language 'français') (SetFrench))
  53.     (if (= @language 'deutsch') (SetGerman))
  54. )
  55. (procedure SetEnglish
  56.     (set #Hello 'Hi there')
  57. )
  58. (procedure SetFrench
  59.     (set #Hello 'Bonjour')
  60. )
  61. (procedure SetGerman
  62.     (set #Hello 'Guten tag')
  63. )
  64. ;;;
  65. ;;; Check system meets minimum requirements
  66. (procedure CheckSystem
  67.     (set #CPUPrompt 'Which processor would you like to install for?')
  68.  
  69.     ; Check OS version
  70.     (set #RC (run "version version 39"))
  71.     (if (= #RC 5) (abort #MinOSError))
  72.  
  73.     ; Check memory
  74.     (set #TotalRAM (+ (database "total-mem")))
  75.     (if (< #TotalRam #MinRAM) (abort #MinMemError))
  76.  
  77.     ; Check CPU
  78.     (set #CPU (database "cpu"))
  79.     (if
  80.         (< #CPU "68020")
  81.         (abort #MinCPUError)
  82.     )
  83.     (set #DefCPU 0)
  84.     (if (= #CPU "68030") (set #DefCPU 1))
  85.     (if (= #CPU "68040") (set #DefCPU 2))
  86.     (if (= #CPU "68060") (set #DefCPU 3))
  87.  
  88.     (set #CPUPrompt (cat 'Installer has detected a ' #CPU ' processor.\n\n' #CPUPrompt))
  89.     (set #CPUchoice
  90.         (askchoice
  91.             (prompt #CPUPrompt)
  92.             (help #CPUHelp)
  93.             (choices
  94.                 '\x1B[2p68020'
  95.                 '68030'
  96.                 '68040'
  97.                 '68060'
  98.             )
  99.             (default #DefCPU)
  100.         )
  101.     )
  102.     (set #CPUext (select #CPUchoice ("") (".030") (".040") (".060")))
  103. )
  104. ;;;
  105. ;;; Show Images
  106. (procedure ShowImages
  107.     (showmedia 'testpic0' 'images/testpic.gif' 'upper_right' 'none' 0)
  108.     (showmedia 'testpic1' 'images/AACDmain.gif' 'upper_left' 'none' 0)
  109.     (showmedia 'testpic2' 'images/aamain1.jpeg' 'upper_center' 'none' 0)
  110.     (showmedia 'testpic3' 'images/SideMag.gif' 'lower_left' 'none' 0)
  111.     (showmedia 'testpic4' 'images/SideSearch.gif' 'lower_right' 'none' 0)
  112.     (showmedia 'testpic5' 'images/Top.gif' 'lower_center' 'none' 0)
  113. )
  114. ;;;
  115. ;;; Remove images
  116. (procedure RemoveImages
  117.     (closemedia testpic0)
  118.     (closemedia testpic1)
  119.     (closemedia testpic2)
  120.     (closemedia testpic3)
  121.     (closemedia testpic4)
  122.     (closemedia testpic5)
  123. )
  124. ;;;
  125.  
  126. ; Main install
  127. (effect 'center' 'horizontal' $ff0000 $0000ff)
  128. (SetLanguage)
  129. (ShowImages)
  130. (CheckSystem)
  131. (RemoveImages)
  132. (exit (quiet))
  133.  
  134.